Over the last decade, there has been increasing interest shown toward technologies relating to the use of probabilistic user modeling for inferring user goals and states of the world under uncertainty. The user models have been applied typically in desktop settings, where designers can assume that a personal computer—often having extensive processing capabilities, is available for performing inferences. The forms that a user model can manifest are often as varied as the purposes for which such models are formed. For instance, to cite but a few cases, these models may seek to describe the cognitive processes that underlie the user's actions; the differences between the user's skills and expert skills; the user's behavioral patterns or preferences; or the user's characteristics.
Early applications of machine learning in user modeling often focused on the first two of the above noted model types, with particular emphasis given to developing models of cognitive processes. In contrast, recent efforts may have been more focused on users' behavioral patterns, rather than on the cognitive processes that underlie that behavior. Applications of machine learning to discovering users' characteristics have been limited in many cases due to the complexity of the models. For example, very substantial increases in purchases are claimed for systems that recommend products to users of retail web sites using models based on purchases by other users. In other cases, situations in which the user repeatedly performs a task that involves selecting among several predetermined options appear ideal for using standard machine learning techniques to form a model of the user. One example of such a task is processing e-mail by deleting some messages and filing others into folders. Another example is to determine which news articles to read from a webpage. In such situations, the information available to the user to describe the problem and the decision made can serve as the training data for a learning algorithm. The algorithm creates a model of a user's decision making process that can then be used to emulate the user's decisions on future problems. Initially, one may consider such user modeling problems as straightforward standard classification learning tasks. However, user modeling presents a number of very significant challenges for machine learning applications. Notably, how to apply learning obtained by such models on devices that may not posses the capabilities to operate the models in real time.